Skip to content

Getting Started ​

Welcome to Model Match! Follow these steps to set up your development environment.


1. Install Bun ​

Bun is our package manager and script runner.

sh
curl -fsSL https://bun.sh/install | bash

2. Install Chromium ​

Chromium is required for generating report images.
Why: Our reports service uses Puppeteer to render charts and export images.

How to install:

sh
npx @puppeteer/browsers install chromium@latest --path /tmp/localChromium

After installation, note the path to the Chromium binary and add it to your config if needed (see tools/sst/src/index.ts for details).


3. Install Lefthook ​

Lefthook manages our git hooks for formatting, linting, etc.

sh
bun run lefhook

We recommend using VSCode.
Open the Command Palette (Cmd+Shift+P), type Extensions: Show Recommended Extensions, and install all listed.
These are auto-suggested from our .vscode/extensions.json.


5. Set Up Your Environment Variables ​

Copy the example env file and fill in your values:

sh
cp .env.example .env

Edit .env and provide the required secrets and configuration.


6. Configure AWS Credentials ​

Edit (or create) ~/.aws/credentials and add:

[default]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

[prod]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

[dev]
aws_access_key_id = ...
aws_secret_access_key = ...
region = us-west-2

7. Install Docker Desktop ​

Docker is required for local development services.
Download and install from: https://www.docker.com/products/docker-desktop/


8. Install Typos CLI ​

Typos checks for spelling mistakes in code.

sh
brew install typos-cli

9. Create Your Personal Stage Config ​

Create a config file for your personal stage in the .mmv3 directory.
Example: .mmv3/nickgraffis.config.ts

Follow the structure in tools/sst/src/index.ts for available options.